// pages/feedback/feedback.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    tabs:[
      {
        id:0,
        name:"体验问题",
        isActive:true
      },
      {
      id:1,
      name:"商品，商家投诉",
      isActive:false
    }
    ],
    questionCategorys:[
      {id:0,
      name:"功能建议",
      isActive:false,
      bgColor:'white'
    },
      {id:1,
        name:"使用遇到问题",
        isActive:false,
        bgColor:'white'
      },
        {id:2,
          name:"性能问题",
          isActive:false,
          bgColor:'white'
        },
          {id:3,
            name:"其他",
            isActive:false,
            bgColor:'white'
          },
    ],
    //选择的图片数组
    chooseImgs:[],
    image:'',
    question:'体验问题',
    questionCategory:'',
    description:'',
    userName:wx.getStorageSync('user_info').userName,
  },
  handleChooseQuestionCategory(e) {
    // 声明 questionCategory1 变量
    let questionCategorys1;
  
    for (var a = 0; a < this.data.questionCategorys.length; a++) {
      var that = this;
      if (a == e.currentTarget.dataset.index) {
        // 使用当前的 questionCategory 值初始化 questionCategory1
        questionCategorys1 = that.data.questionCategorys;
        // 更改选中项的背景颜色
        questionCategorys1[a].bgColor = 'blue';
        // 更新数据
        that.setData({
          questionCategorys: questionCategorys1,
          questionCategory:questionCategorys1[a].name
        });
      }else{
         // 使用当前的 questionCategory 值初始化 questionCategory1
         questionCategorys1 = that.data.questionCategorys;
         // 更改选中项的背景颜色
         questionCategorys1[a].bgColor = 'white';
         // 更新数据
         that.setData({
           questionCategorys: questionCategorys1
         });
      }
    }
    console.log(e.currentTarget.dataset.index);
    console.log(this.data.questionCategory);
  },
  input(e){
    this.setData({
      description:e.detail.value
    })
  },
  handleTap1(e){
    //1、获取被点击的索引
    const choiceQuestion = this.data.tabs[e.detail.index].name;
    const {index} = e.detail;
    this.setData({
      question:choiceQuestion
    })
    //修改源数组
    let {tabs} =this.data;
    tabs.forEach((v,i)=>i===index?v.isActive=true:v.isActive=false);
    //赋值到data中
    this.setData({
      tabs
    })
  },

//点击+选择图片
  handleChooseImg(e){
    wx.chooseImage({
      count: 1,
      sizeType:['original','compressed'],
      sourceType:['album','camera'],
      success:(result) =>{
        console.log(result);
        this.setData({
          chooseImgs:[...this.data.chooseImgs,...result.tempFilePaths]
        })
        wx.uploadFile({
          url: 'http://localhost:80/common/upload', // 您的服务器上传接口地址
          filePath: this.data.chooseImgs[0], // 临时文件路径
          name: 'file', // 文件对应的参数名，与后端代码中的MultipartFile参数名一致
          success: (res) => {
            console.log("图片上传成功");
            const data = JSON.parse(res.data);
            console.log(data);
            console.log(data.data);
            this.setData({
              image:data.data
            })
          },
          fail: (err) => {
            console.error('图片上传失败');
          },
        });
      }
    })
  },

  //点击删除图片
  handleRemoveImg(e){
      const {index} =e.currentTarget.dataset;
      let {chooseImgs} = this.data;
      chooseImgs.splice(index,1);
      this.setData({
        chooseImgs,
        image:'',
      })
  },

  submit(e){
    if(this.data.questionCategory===''){
      wx.showToast({
        icon:'error',
        title: '请选择问题种类！',
        duration:2000
      })
      return;
    }if(this.data.description===''){
      wx.showToast({
        icon:'error',
        title: '请输入问题描述！',
        duration:2000
      })
      return;
    }
    var questionJson={userName:this.data.userName,status:0,question:this.data.question,questionCategory:this.data.questionCategory,description:this.data.description,image:this.data.image};
    wx.request({
      url: 'http://localhost:80/problem/saveProblem',
      method:'POST',
      data:questionJson,
      success(res){
        if(res.data.code==1){
         wx.showToast({
           icon:'success',
           title: '提交成功',
           duration:2000
         })
         setTimeout(() => {
           wx.navigateBack({
            delta:1
          });
        }, 2000); // 延迟时间，单位为毫秒（1000 毫秒 = 1 秒）
        }
      }
    })
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})